#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
vector<vector<int>> arr;
int n;
void setCol()
{
	for(int j=0;j<n/2;j++)
	{
		for(int i=0;i<n;i++)
		{
			swap(arr[i][j],arr[i][n-1-j]);
		}
	}
	
}
void setRow()
{
	for(int i=0;i<n/2;i++)
	{
		swap(arr[i],arr[n-1-i]);	
	}
}
int main()
{
	
	cin>>n;
	arr.resize(n,vector<int>(n));
	
	for(int i=0;i<n;i++)
		for(int j=0;j<n;j++)	
			cin>>arr[i][j];
	
	int q;
	cin>>q;
	int row=0,col=0;
	while(q--)
	{
		int op;
		cin>>op;
		if(op==1)
		{
			row++,col++;
		}
		else{
			row++;
		}
	}
	if(row%2)
		setRow();
	if(col%2)
		setCol();
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<n;j++)
		{
			cout<<arr[i][j]<<' ';
		}
		cout<<endl;
	}
	return 0;
}
